package cn.zhangxin.pethome.mylistenter;


import cn.zhangxin.pethome.system.permission.service.IPermissionService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;

@WebListener//申明自定义的web监听器，被容器注册和使用
@Slf4j//日志 可要可不要
public class PermissionScanInitListener implements ServletContextListener {

    @Autowired
    private IPermissionService permissionService;

    @Override
    public void contextInitialized(ServletContextEvent sce) {
        //开启一个新线程，不然启动服务器和扫描自定义注解一个现在会使项目启动速度变慢
        new Thread(new Runnable() {
            @Override
            public void run() {
                log.info("权限初始化开始******************************************");//打印日志
                System.out.println("权限初始化开始******************************************");
                permissionService.scanPermission();//扫描逻辑 放到permissionServiceImpl中去写
                System.out.println("权限初始化结束******************************************");
            }
        }).start();
    }

    @Override//结束方法，不写
    public void contextDestroyed(ServletContextEvent sce) {

    }
}
